package com.xw.model;

import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import javax.persistence.*;

@Getter
@Setter
public class Videos {
    /**
     * id
     */
    @Id
    @Column(name = "video_id")
    private String videoId;

    /**
     * 课程名称
     */
    @Column(name = "video_name")
    private String videoName;

    /**
     * 课程介绍
     */
    @Column(name = "video_desc")
    private String videoDesc;

    /**
     * 课程封面图
     */
    @Column(name = "video_img")
    private String videoImg;

    /**
     * 是否免费 0.否 1.是
     */
    @Column(name = "is_free")
    private Integer isFree;

    /**
     * 视频拥有者id
     */
    @Column(name = "user_id")
    private String userId;

    /**
     * 讲师名字
     */
    @Column(name = "teacher_name")
    private String teacherName;

    /**
     * 原价
     */
    @Column(name = "original_price")
    private Double originalPrice;

    /**
     * 当前价（售价）
     */
    @Column(name = "current_price")
    private Double currentPrice;

    /**
     * 销量
     */
    @Column(name = "sale_count")
    private Integer saleCount;

    /**
     *
     * 学习人数
     */
    @Column(name = "study_count")
    private Integer studyCount;

    /**
     * 试看视频ID
     */
    private String tryVideoItemId;

    /**
     * 是否是推荐课程  0.否 1.是
     */
    @Column(name = "is_recomment")
    private Integer isRecomment;

    /**
     * 视频上传者id
     */
    @Column(name = "create_id")
    private String createId;

    /**
     * 上传时间
     */
    @Column(name = "create_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * 更新时间
     */
    @Column(name = "update_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /**
     * 一级分类id
     */
    @Column(name = "st_id_one")
    private String stIdOne;

    /**
     * 二级分类id
     */
    @Column(name = "st_id_two")
    private String stIdTwo;

    /**
     * 三级分类id
     */
    @Column(name = "st_id_three")
    private String stIdThree;

    /**
     * 0.未发布 1.发布 （判断该视频下的所有视频是否通过审核）
     */
    @Column(name = "is_publish")
    private Integer isPublish;

    /**
     * 发布类型 1.审核通过后立即发布 2.先提交本次审核
     */
    @Column(name = "publish_type")
    private Integer publishType;

    /**
     * 是否删除 0.否 1.是
     */
    private Integer isDel;
    /**
     * 审核状态 0.审核中 1. 通过 2.不通过
     */
    private Integer checkStatus;
    /**
     * 审核不通过原因
     */
    private String noPassReason;

    /**
     * 课程置顶 0.否 1.是
     */
    private Integer isTop;
    /**
     * 自己是否推荐 0.否 1.是
     */
    private Integer myRecommend;
    /**
     * 自己推荐设置时间（排序使用）
     */
    private Date myRecommendTime;

    //视频数量
    @Transient
    private Integer videoItemCount;

}